<?php
/**
 * Created by PhpStorm.
 * User:
 * Date:
 * Time:
 * Mail:
 */

namespace app\adminapi\controller;
use app\adminapi\model;
use app\adminapi\validate\CarlifeValidate;
use app\base\service\Csv;
/**
 * @name【拍卖车辆】
 * @baseurl【adminapi/Carsell】
 * @file【Carsell.php】
 */
class Carsell extends Base
{
    /**
     * @name【拍卖列表】
     * @desc【拍卖列表】
     * @uri【sellList】
     * @method【post】
     * @param【
     * fields $ string $ car_auction_id,company_name,number,state $ 字段名称 #
     * where_json $ json $ {"car_auction_id":["like","%王%"],"company_name":["like","%王%"],"number":["like","%王%"],"state":["in","1"]} $ 查询条件 #
     * page $ int $ 1$ 页数 #
     * pagenum $ int $ 10 $记录数
     * 】
     * @return【
     * code $ int $ number|1-1 $ 校验码#
     * msg $ string $  $ 错误信息 #
     * data $ json $ $ 订单列表 #
     * description $ json $ $ 接口说明
     * 】
     */
    public function sellList(){

        $report    = new CarlifeValidate();
        $param     = $report->scene('report')->getCurrentData();
        $report->goCheck($param);
        $where     = json_decode($param['where_json'],true);
        list($code,$data) = (new model\CarSell())->CarSellLlist($param['fields'],$where,$param['page'],$param['pagenum']);
        if($code==1){
            return $this->retSucc($data);
        }else{
            return $this->retError($data);
        }
    }

    /**
     * @name【新增拍卖】
     * @desc【新增拍卖】
     * @uri【add】
     * @method【post】
     * @param【
     * car_id $ int $ 123 $ 车ID $ 1 #
     * why $ string $ anc $ 理由  #
     * 】
     * @return【
     * code $ int $ number|1-1 $ 标识1-成功 0-失败#
     * msg $ string $  $ code=0，错误信息#
     * 】
     * @return mixed|\think\response\Json|void
     * @throws \app\base\exception\RecordNotFoundException
     * @throws \think\exception\DbException
     */
    public function add(){
        $param = input('param.');

        list($code,$data) =  (new model\CarSell())->createOrUpdate($param);

        if($code==1){
            $info['code'] = $code;
            $info['msg']  = '';
            $info['time'] = time();
            if(is_array($data)){
                $info         = array_merge($info,$data);
            }else{
                $info['data'] = $data;
            }
            return json($info);
        }else{
            return $this->retError($data);
        }
    }

    /**
     * @name【审核拍卖】
     * @desc【审核拍卖】
     * @uri【checkSell】
     * @method【post】
     * @param【
     * car_auction_id $ int $ 1 $ 申请ID $ 1 #
     * state $ int $ 10 $ 状态码 $ 1 #
     * true_money $ int $ 123 $ 预计拍卖金额 #
     * want_money $ int $ 123 $ 实际成交金额 #
     * 】
     * @return【
     * code $ int $ number|1-1 $ 标识1-成功 0-失败#
     * msg $ string $  $ code=0，错误信息#
     * 】
     * @throws \app\base\exception\RecordNotFoundException
     * @throws \think\exception\DbException
     */
    public function checkSell(){
        $param = input('param.');

        if($param['car_auction_id']) {
            list($code, $data) = (new model\CarSell())->createOrUpdate($param);
        }

        if($code==1){
            $info['code'] = $code;
            $info['msg']  = '';
            $info['time'] = time();
            if(is_array($data)){
                $info         = array_merge($info,$data);
            }else{
                $info['data'] = $data;
            }
            return json($info);
        }else{
            return $this->retError($data);
        }
    }

    /**
     * @name【删除拍卖】
     * @desc【删除拍卖】
     * @uri【delete】
     * @method【post】
     * @param【
     * car_auction_id $ int $ 1 $ 拍卖申请ID $ 1 #
     * 】
     * @return【
     * code $ int $ number|1-1 $ 标识1-成功 0-失败#
     * msg $ string $  $ code=0，错误信息#
     * 】
     */
    public function delete(){

        $param = input('param.');
        if($param['car_auction_id']) {
            list($code, $data) = (new model\CarSell())->delete($param['car_auction_id']);
        }
        if($code==1){
            $info['code'] = $code;
            $info['msg']  = '';
            $info['time'] = time();
            if(is_array($data)){
                $info         = array_merge($info,$data);
            }else{
                $info['data'] = $data;
            }
            return json($info);
        }else{
            return $this->retError($data);
        }
    }
}